package com.abc.service;

import com.abc.dto.request.AddDocumentRequestDto;
import com.abc.dto.request.SearchDocumentRequestDto;
import com.abc.dto.response.RerankResponseDto;
import org.springframework.ai.document.Document;

import java.util.List;

/**
 * 向量存储服务接口
 * 
 * @author abc
 * @since 2024-01-01
 */
public interface VectorStoreService {



    /**
     * 初始化向量存储
     */
    void initializeVectorStore();

    /**
     * 向量存储中添加文档
     * @param request 向量存储中添加文档请求
     */

    void add(AddDocumentRequestDto request);

    RerankResponseDto search(SearchDocumentRequestDto  request);

    RerankResponseDto performRerank(String query, List<Document> documents);
}

